Chinese Spelling Check (CSC)相关论文
Spelling Error Correction with Soft-Masked BERT
ACL 2020,字节AI LAB
本文提出了一种新的神经结构,称为SoftMasked BERT。软屏蔽BERT包含两个网络,一个检测网络和一个基于BERT的校正网络。校正网络与单纯使用BERT的方法相似。检测网络是Bi-GRU网络,可以预测字符在每个位置出现错误的概率。然后利用该概率进行在该位置嵌入字符的软掩蔽。软掩蔽是传统的“硬掩蔽”的延伸,当误差概率等于1时,前者退化为后者。然后将每个位置的软掩蔽嵌入信息输入到校正网络中。校正网络使用BERT进行误差校正。该方法可以在端到端联合训练过程中,在检测网络的帮助下,强制模型学习正确的上下文进行错误纠正。
模型结构:
具体细节:如图所示,软掩蔽BERT由一个基于Bi-GRU的检测网络和一个基于BERT的校正网络组成。检测网络预测误差的概率,修正网络预测误差修正的概率,而检测网络利用软掩蔽将预测结果传递给修正网络。更具体地说,首先为输入语句中的每个字符创建嵌入,称为输入嵌入。接下来,它使用检测网络以嵌入序列作为输入和输出字符序列(嵌入)的错误概率。然后计算输入嵌入和[MASK]嵌入的加权和,并根据误差概率进行加权。计算得到的嵌入以一种软的方式掩盖了序列中可能出现的错误。然后,以软屏蔽嵌入序列作为输入,使用修正网络输出误差修正的概率,这是一个BERT模型,它的最后一层由一个针对所有字符的softmax函数组成。在输入嵌入项和最终层的嵌入项之间还有剩余的连接。
主实验结果:
soft-mask的意义:纠错模型不仅要学习正确的上下文,还要给定上下文条件下学习(错字-正字)之间的映射关系(比如正确的字一般都为错字的音近形近字),mask掉错字,很有可能一开始就已经南辕北辙了。
SpellGCN: Incorporating Phonological and Visual Similarities into Language Models for Chinese Spelling Check
ACL 2020,蚂蚁金服,https://github.com/ACL2020SpellGCN/SpellGCN,https://kami.app/QSPxJ4pKJcwC
本工作的亮点,在于把混淆集做成了“图”,又加到了单字的embedding里。把混淆集做成GCN,每个字不仅是它自己融合上下文特征后的embedding,在embedding里也加入了音近、形近字的影子。于是进行多分类的时候,每个混淆集里的字都更倾向于分为混淆集里的其他字。具体实现上,分别基于已知混淆集建立音似图和形似图,使用BERT作为GCN初始化,两个图之间使用注意力聚合,最后使用GCN的输出做分类。
模型结构:
主实验结果:
Confusionset-guided Pointer Networks for Chinese Spelling Check
ACL 2019,Tencent Cloud AI
seq2seq模式,结合指针网络,从混淆集生成以及原句中copy得到最终的纠错结果。
模型结构:
实验结果:
A Hybrid Approach to Automatic Corpus Generation for Chinese Spelling Check
EMNLP 2018,Tencent AI
中文错字的自动检查是一个富有挑战又十分有意义的任务,该任务不仅用于许多自然语言处理应用的预处理阶段,而且可以极大促进人们的日常读写。数据驱动的方法在中文错字检查十分有效,然而却面临着标注数据缺乏的挑战。本工作提出了一种自动构造用于拼写检查数据集的方法,分别通过基于 OCR 和 SR 的方法构造视觉上和听觉上相似的字来模拟错字。利用本文提出的方法,研究人员构造了一个大规模的数据集用于训练不同的错字自动检查模型,在三个标准的测试集上的实验结果证明了本文自动构造数据集方法的合理性和有效性。
模型结构:
实验结果:
Adversarial Semantic Decoupling for Recognizing Open-Vocabulary Slots
EMNLP 2020,Keqing
本文是作者发表在EMNLP2020上的工作,主要解决罕见实体识别问题,核心思想是利用对抗攻击来做数据增强。可以借鉴到我们的线上纠错数据集,增强模型的鲁棒性。
模型结构:
主实验结果: